package com.dao.secondary.device;
import com.model.domain.device.GetDevicePcbBaseInfoDO;
import com.model.pojo.device.DevicePcbBaseInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface DevicePcbBaseInfoMapper {
    int deleteByPrimaryKey(@Param("devicePcbBaseInfoId") Long devicePcbBaseInfoId);

    int insert(DevicePcbBaseInfo record);

    int insertSelective(DevicePcbBaseInfo record);

    DevicePcbBaseInfo selectByPrimaryKey(@Param("id") Long id);
    DevicePcbBaseInfo selectByDtu(@Param("dtu") String dtu);
    DevicePcbBaseInfo selectByShortDtu(@Param("shortDtu") String shortDtu);
    List<DevicePcbBaseInfo> selectByImei(@Param("imei") String imei);
    int updateByPrimaryKeySelective(DevicePcbBaseInfo record);

    int updateByPrimaryKey(DevicePcbBaseInfo record);

    List<DevicePcbBaseInfo> selectList(GetDevicePcbBaseInfoDO getdevicePcbBaseInfoDO);
    List<DevicePcbBaseInfo> selectBySim(@Param("sim") String sim);
    List<DevicePcbBaseInfo> selectSimExpireList(GetDevicePcbBaseInfoDO getdeviceObdBaseInfoDO);
    void insertListSelective(List<DevicePcbBaseInfo> devicePcbBaseInfoList);

    void updateListSelective(List<DevicePcbBaseInfo> devicePcbBaseInfoList);

    int has(@Param("devicePcbBaseInfoId") Long devicePcbBaseInfoId, @Param("isDelete") Byte isDelete);

    long countByBatchId(Long batchId);
}